//
// Created by ChaoDONG on 2021-03-17.
//

/* width.c -- field widths */
#include <stdio.h>

#define PAGES 959

int main(void){

    printf("*%d*\n", PAGES);

    /*  第1个转换说明%d不带任何修饰符，其对应的输出结果与带整数字段宽
    度的转换说明的输出结果相同 */

    printf("*%2d*\n", PAGES);

    /*  第2个转换说明是%2d，其对应的输出结果应该是 2 字段宽度
     * 因为待打印的整数有 3 位数字，所以字段宽度自动扩大以符
    合整数的长度 */

    printf("*%10d*\n", PAGES);
    /*  第 3个转换说明是%10d，其对应的输出结果有10个空格宽度，
     * 实际上在两个星号之间有7个空格和3位数字，并且数字位于字段的右侧。 */

    printf("*%-10d*\n", PAGES);

    /* 最后一个转换说明是%-10d，其对应的输出结果同样是 10 个空格宽度，
     * -标记说明打印的数字位于字段的左侧  */

    return 0;
}